{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 个性化召回算法\n",
    "\n",
    "## 什么是个性化召回\n",
    "\n",
    "### 召回\n",
    "\n",
    "从item全集中，选取一部分候选集。\n",
    "\n",
    "- 不同的用户不会喜欢所有类型的item；\n",
    "\n",
    "- 基于性能考虑，不进行召回，后续的排序会耗费大量的时间。\n",
    "\n",
    "### 个性化召回\n",
    "\n",
    "根据用户的属性行为上下文等信息从物品全集中选取其感兴趣的物品作为候选集。（每个人的候选集都不同）\n",
    "\n",
    "## 召回在推荐系统中的重要作用\n",
    "\n",
    "- 召回决定了推荐结果的天花板。\n",
    "\n",
    "## 工业界个性化召回解析\n",
    "\n",
    "- 基于用户行为的，可解释性强，通熟易懂，缺少新颖性；\n",
    "\n",
    "- 基于 user profile 的，效果不错，可扩展性差；\n",
    "\n",
    "- 基于隐语义的，新颖性创新性十足，可解释性差；\n",
    "\n",
    "![framework](img/1.2-framework_of_recall.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
